package org.nbict.iot.protocol.context;


import org.nbict.iot.protocol.Parser;
import org.nbict.iot.protocol.type.ProtocolField;

/**
 * 报文解析上下文接口
 * Created by songseven on 18/6/7.
 */
public interface ParserContext {

    /**
     * 获取待解析原始报文
     * @return
     */
    BinaryPacket buffer();

    /**
     * 获取当前解析报文域
     * @return
     */
    ProtocolField field();

    /**
     * 设置解析报文域
     * @param field
     */
    void field(ProtocolField field);

    /**
     * 获取当前解析报文域的类型
     * @return
     */
    Parser type();

//    void cache(byte[] cached);
    void cache(Object cached);

    int getCacheByEL(String el);

}
